package cn.tedu.mall.order.mapper;

import cn.tedu.mall.pojo.order.model.OmsCart;
import cn.tedu.mall.pojo.order.vo.CartStandardVO;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.List;

/**
 * @author BJ
 * @date 2022/11/2 20:36
 */
@Repository
public interface OmsCartMapper {
    // 先判断当前购物车中是否有指定商品
    OmsCart selectExitCart(@Param("userId") Long userId,
                           @Param("skuId") Long skuId);

    // 向购物车中新增sku信息
    int saveCart(OmsCart omsCart);

    // 根据用户选中的一个或多个id删除购物车中的商品
    int deleteCartByIds(Long[] ids);

    // 更新购物车中sku的数量
    int updateQuantityById(OmsCart omsCart);

    // 清空购物车
    int removeAllCart(Long userId);

    // 根据用户id和skuId删除购物车中的商品
    int deleteCartsByUserIdAndSkuId(OmsCart omsCart);

    // 根据用户id查询购物车中的商品
    List<CartStandardVO> selectCartsByUserId(Long userId);
}
